export function debounce(func, delay){// 防抖函数
  let timer = null;
  return function(...args){
    if(timer){clearTimeout(timer)}
    timer = setTimeout(() => {
      func.apply(this,args)
    },delay)
  }
}

// vue 毫秒数转年月日_vue中将时间戳转换为YYYY-MM-dd hh:mm格式时间的组件
// 将时间戳 转成 时间格式化字符串
export function formatDate(date,fmt){
  // 1.获取年份
  // y* -> 0个或者多个y
  // y? -> 0个或者1个y

  // y+ -> 1个或者多个y
  // 2019
  // yy - 19
  // yyyy - 2019
  if(/(y+)/.test(fmt)){
    fmt = fmt.replace(RegExp.$1,(date.getFullYear() + "").substr(4 - RegExp.$1.length))
  }

  
  let o = {
    "M+": date.getMonth() + 1,
    "d+": date.getDate(),
    "h+": date.getHours(),
    "m+": date.getMinutes(),
    "s+": date.getSeconds()
  }

  for(let k in o){
    if(new RegExp(`(${k})`).test(fmt)){
      let str = o[k]+ "";
      fmt = fmt.replace(RegExp.$1,(RegExp.$1.length === 1) ? str : padLeftZero(str));
    }
  }

  return fmt;
}
// 左边补0函数
function padLeftZero(str){
  return ('00' + str).substr(str.length);
}